package JUnit;

import static org.junit.Assert.*;

import java.io.IOException;
import java.util.Calendar;

import javax.xml.bind.JAXBException;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;

import org.junit.Test;
import org.xml.sax.SAXException;

import entity.Goal;

public class GoalTest {

	@Test
	public void testGetId() {
		Goal temp = new Goal();
		
		assertEquals(temp.getId(), "NULL");
	}

	@Test
	public void testSetId() {
		Goal temp = new Goal(); 
		temp.setId("123");
		assertEquals(temp.getId(), "123");
	}

	@Test
	public void testGoal() {
		Goal Temp = new Goal();
		
		Calendar today = Calendar.getInstance();
		today.set(2013, Calendar.MARCH, 1);
		
		try {
			Temp = new Goal("123", today, Calendar.getInstance(), 100, 0, null, false, false);
		} catch (InstantiationException
				| IllegalAccessException | JAXBException
				| ParserConfigurationException | SAXException | IOException
				| TransformerException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		assertEquals(Temp.getName(), "123");
		assertEquals(Temp.getStartDate(), today);
	
	}
/*
	@Test
	public void testGoalStringCalendarCalendarDoubleDoubleStringBooleanBoolean() {
		fail("Not yet implemented");
	}

	@Test
	public void testGetName() {
		fail("Not yet implemented");
	}

	@Test
	public void testSetName() {
		fail("Not yet implemented");
	}

	@Test
	public void testGetStartDate() {
		fail("Not yet implemented");
	}

	@Test
	public void testSetStartDate() {
		fail("Not yet implemented");
	}

	@Test
	public void testGetEndDate() {
		fail("Not yet implemented");
	}

	@Test
	public void testSetEndDate() {
		fail("Not yet implemented");
	}

	@Test
	public void testGetTotalAmount() {
		fail("Not yet implemented");
	}

	@Test
	public void testSetTotalAmount() {
		fail("Not yet implemented");
	}

	@Test
	public void testGetComment() {
		fail("Not yet implemented");
	}

	@Test
	public void testSetComment() {
		fail("Not yet implemented");
	}

	@Test
	public void testGetAmountAchieved() {
		fail("Not yet implemented");
	}

	@Test
	public void testSetAmountAchieved() {
		fail("Not yet implemented");
	}

	@Test
	public void testDepositToGoal() {
		fail("Not yet implemented");
	}

	@Test
	public void testIsActive() {
		fail("Not yet implemented");
	}

	@Test
	public void testSetActive() {
		fail("Not yet implemented");
	}

	@Test
	public void testSetRequireAmount() {
		fail("Not yet implemented");
	}

	@Test
	public void testGetRequireAmount() {
		fail("Not yet implemented");
	}

	@Test
	public void testCalculateRequireAmt() {
		fail("Not yet implemented");
	}

	@Test
	public void testCalculateRequireAmtCalendar() {
		fail("Not yet implemented");
	}

	@Test
	public void testIsAchieved() {
		fail("Not yet implemented");
	}

	@Test
	public void testSetAchieved() {
		fail("Not yet implemented");
	}
*/
}
